package cz.muni.fi.pa036is.dto;

import java.io.Serializable;
import java.sql.Date;
import java.util.List;

/**
 *
 * @author Shebik
 */
public class PersonDetailTO implements Serializable {

    private Long id;
    private String firstName;
    private String lastName;
    private Date dateOfBirth;
    private String phoneNumber;
    private String email;
    private AddressTO address;
    private List<AdmissionGridTO> admissionList;
    private List<MatchGridTO> matchList;

    public AddressTO getAddress() {
        return address;
    }

    public void setAddress(AddressTO address) {
        this.address = address;
    }

    public List<AdmissionGridTO> getAdmissionList() {
        return admissionList;
    }

    public void setAdmissionList(List<AdmissionGridTO> admissionList) {
        this.admissionList = admissionList;
    }

    public Date getDateOfBirth() {
        return dateOfBirth;
    }

    public void setDateOfBirth(Date dateOfBirth) {
        this.dateOfBirth = dateOfBirth;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getFirstName() {
        return firstName;
    }

    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getLastName() {
        return lastName;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }

    public List<MatchGridTO> getMatchList() {
        return matchList;
    }

    public void setMatchList(List<MatchGridTO> matchList) {
        this.matchList = matchList;
    }

    public String getPhoneNumber() {
        return phoneNumber;
    }

    public void setPhoneNumber(String phoneNumber) {
        this.phoneNumber = phoneNumber;
    }

    @Override
    public boolean equals(Object obj) {
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        final PersonDetailTO other = (PersonDetailTO) obj;
        if (this.id != other.id && (this.id == null || !this.id.equals(other.id))) {
            return false;
        }
        return true;
    }

    @Override
    public int hashCode() {
        int hash = 5;
        hash = 97 * hash + (this.id != null ? this.id.hashCode() : 0);
        return hash;
    }

    @Override
    public String toString() {
        return "PersonDetailTO{" + "id=" + id
                + "firstName=" + firstName
                + "lastName=" + lastName
                + "dateOfBirth=" + dateOfBirth
                + "phoneNumber=" + phoneNumber
                + "email=" + email
                + "address=" + address + '}';
    }

}
